package com.atguigu.serviceedu.service;

import com.atguigu.dto.CourseDto;
import com.atguigu.serviceedu.entity.EduCourse;
import com.atguigu.serviceedu.entity.form.CourseInfoForm;
import com.atguigu.serviceedu.entity.vo.*;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;

import java.util.List;

/**
 * <p>
 * 课程 服务类
 * </p>
 *
 * @author atguigu
 * @since 2023-07-26
 */
public interface EduCourseService extends IService<EduCourse> {
    public String insertCourseInfo(CourseInfoForm courseInfoForm);

    public CourseInfoForm selectCourseById(String id);

    public boolean updateCourseInfo(CourseInfoForm courseInfoForm);

    public IPage<CourseVO> getConditionCourse(Long currentpage, Long pagesize, CourseQueryVO courseQueryVO);

    public boolean deleteCourseCoverByCourseId(String id);

    public boolean removeCourseById(String id);
    public CoursePublishVO queryCoursePublishById(String id);
    public boolean updateCourseStatusById(String id);

    List<EduCourse> getSiteCourseByCondition(SiteCourseQueryVO siteCourseQueryVO);
    public SiteCourseVO querySiteCourseVOById(String id);
    public List<EduCourse>queryCourseForSiteIndex();
    public CourseDto queryCourseDtoById(String id);
}
